home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-02-13 | 7.4 KB | 318 lines | [TEXT/MPS ] |
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: LinkB.xh.
- * Generated using:
- * SOM Precompiler somipc: 2.18
- * SOM Emitter emitxh.dll: 2.33
- */
-
- /*
- *
- * Classes defined in this interface
- *
- */
-
-
- #ifndef SOM_ODBaseLink_xh
- #define SOM_ODBaseLink_xh
-
- class ODBaseLink;
-
- #define ODBaseLink_MajorVersion 1
- #define ODBaseLink_MinorVersion 0
-
- /* C++ SOM defs */
- #include <somcls.xh>
- #include <somcm.xh>
-
- /* C++ parent defs */
- #ifndef SOM_ODPersistentObject_xh
- #include <PstObj.xh>
- #endif
-
- #ifndef ODBaseLink_API
- #define ODBaseLink_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class SOMClass;
- class SOMObject;
- class ODFrame;
- class ODFacet;
- class ODObject;
- class ODExtension;
- class ODRefCntObject;
- class ODPersistentObject;
- class ODStorageUnit;
- class ODBaseLink;
- class ODLinkSource;
- class ODPart;
- class ODDraft;
-
- /*
- * End of user-defined types.
- */
-
- #ifdef OLDIBMSOMAPISUPPORT
- #define ODBaseLinkCClassData ODBaseLinkClassData
- #define ODBaseLinkNewClass(major,minor) somNewVersionedClassReference(ODBaseLink,major,minor)
- #endif
-
- /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
- #define ODBaseLinkMetaClass SOMClass
-
- #if PRAGMA_ALIGN_SUPPORTED
- # pragma options align=power
- #endif
-
- /* The API to the ODBaseLink class object, and the methods it introduces. */
- SOMEXTERN struct ODBaseLinkClassDataStructure {
- #ifdef OLDIBMSOMAPISUPPORT
- SOMClass *classObject; /* always zero, use somNewClassReference instead */
- #else
- long zero;
- #endif
- somStaticClassInfo *sci;
- somDToken instanceDataToken;
- long reserved [3];
- somMToken Lock;
- somMToken Unlock;
- somMToken GetContentStorageUnit;
- somMToken RegisterDependent;
- somMToken UnregisterDependent;
- somMToken GetUpdateID;
- somMToken GetChangeTime;
- somMToken ShowSourceContent;
- somMToken ShowLinkDestinationInfo;
- somMToken reserved1;
- somMToken reserved2;
- somMToken reserved3;
- somMToken reserved4;
- somMToken reserved5;
- somMToken reserved6;
- somMToken reserved7;
- } SOMDLINK ODBaseLinkClassData;
-
- #if PRAGMA_ALIGN_SUPPORTED
- # pragma options align=reset
- #endif
-
- #if !defined(ODBaseLink_Class_Source) && !defined(SOM_Module_linkb_Source)
- #if PRAGMA_IMPORT_SUPPORTED
- #pragma import list ODBaseLinkClassData
- #endif
- #endif
-
-
- /*
- * -- Typedefs and inline method declarations for left path inherited methods
- * -- are omitted because this compilation had -museinheritedmethods in effect
- */
-
-
- /*
- * -- Typedefs for ODBaseLink Method Procedures
- */
- SOMEXTERN {
- typedef ODBoolean (* SOMLINK somTD_ODBaseLink_Lock)(ODBaseLink *somSelf, Environment *ev,
- ODULong wait,
- ODLinkKey* key);
- typedef void (* SOMLINK somTD_ODBaseLink_Unlock)(ODBaseLink *somSelf, Environment *ev,
- ODLinkKey key);
- typedef ODStorageUnit* (* SOMLINK somTD_ODBaseLink_GetContentStorageUnit)(ODBaseLink *somSelf, Environment *ev,
- ODLinkKey key);
- typedef void (* SOMLINK somTD_ODBaseLink_RegisterDependent)(ODBaseLink *somSelf, Environment *ev,
- ODPart* clientPart,
- ODUpdateID id);
- typedef void (* SOMLINK somTD_ODBaseLink_UnregisterDependent)(ODBaseLink *somSelf, Environment *ev,
- ODPart* clientPart);
- typedef ODUpdateID (* SOMLINK somTD_ODBaseLink_GetUpdateID)(ODBaseLink *somSelf, Environment *ev);
- typedef ODTime (* SOMLINK somTD_ODBaseLink_GetChangeTime)(ODBaseLink *somSelf, Environment *ev);
- typedef void (* SOMLINK somTD_ODBaseLink_ShowSourceContent)(ODBaseLink *somSelf, Environment *ev);
- typedef ODBoolean (* SOMLINK somTD_ODBaseLink_ShowLinkDestinationInfo)(ODBaseLink *somSelf, Environment *ev,
- ODFacet* facet,
- ODLinkInfo* info,
- ODBoolean changesAllowed,
- ODLinkInfoResult* infoResult);
- }
-
- #endif /* ODBaseLink_API */
-
-
- /*
- * -- This emitter treats Method Tokens as Thunks by default.
- * -- Use the sc modifier "nothunks" to change this default
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * -- The C++ Wrapper Class for ODBaseLink
- */
- class ODBaseLink : public ODPersistentObject
- {
- public:
-
- // ODBaseLink::new registers use of the class object, and then uses somNew
- // to allocate memory and load the object method table pointer.
- void *operator new(size_t size)
- {
- SOM_IgnoreWarning(size);
- // Allocate memory using the default allocator for ODBaseLink, and
- // clear mem & set method table pointer, call basic initialization
- #ifdef SOMCHKNULL
- void * __somResult = (void *)
- somNewObject(ODBaseLink);
- SOMCHKNULL(__somResult);
- return __somResult;
- #else
- return (void*) somNewObject(ODBaseLink);
- #endif
- }
-
- // ODBaseLink::delete uses the default deallocator for the object's class.
- void operator delete(void * obj)
- {
- if (obj) {
- SOM_Resolve(obj,SOMObject,somFree)
- ( (SOMObject*) obj );
- }
- }
-
- /* method: Lock */
- ODBoolean Lock(Environment *ev,
- ODULong wait,
- ODLinkKey* key)
- {
- #ifdef SOMCHKEXCEPT
- ODBoolean __somResult =
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,Lock)
- (this,ev,wait,key);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,ODBaseLink,ODBaseLink,Lock)
- (this,ev,wait,key);
- #endif
- }
-
- /* method: Unlock */
- void Unlock(Environment *ev,
- ODLinkKey key)
- {
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,Unlock)
- (this,ev,key);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- /* method: GetContentStorageUnit */
- ODStorageUnit* GetContentStorageUnit(Environment *ev,
- ODLinkKey key)
- {
- #ifdef SOMCHKEXCEPT
- ODStorageUnit* __somResult =
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,GetContentStorageUnit)
- (this,ev,key);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,ODBaseLink,ODBaseLink,GetContentStorageUnit)
- (this,ev,key);
- #endif
- }
-
- /* method: RegisterDependent */
- void RegisterDependent(Environment *ev,
- ODPart* clientPart,
- ODUpdateID id)
- {
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,RegisterDependent)
- (this,ev,clientPart,id);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- /* method: UnregisterDependent */
- void UnregisterDependent(Environment *ev,
- ODPart* clientPart)
- {
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,UnregisterDependent)
- (this,ev,clientPart);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- /* method: GetUpdateID */
- ODUpdateID GetUpdateID(Environment *ev)
- {
- #ifdef SOMCHKEXCEPT
- ODUpdateID __somResult =
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,GetUpdateID)
- (this,ev);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,ODBaseLink,ODBaseLink,GetUpdateID)
- (this,ev);
- #endif
- }
-
- /* method: GetChangeTime */
- ODTime GetChangeTime(Environment *ev)
- {
- #ifdef SOMCHKEXCEPT
- ODTime __somResult =
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,GetChangeTime)
- (this,ev);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,ODBaseLink,ODBaseLink,GetChangeTime)
- (this,ev);
- #endif
- }
-
- /* method: ShowSourceContent */
- void ShowSourceContent(Environment *ev)
- {
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,ShowSourceContent)
- (this,ev);
- #ifdef SOMCHKEXCEPT
- SOMCHKEXCEPT;
- #endif
- }
-
- /* method: ShowLinkDestinationInfo */
- ODBoolean ShowLinkDestinationInfo(Environment *ev,
- ODFacet* facet,
- ODLinkInfo* info,
- ODBoolean changesAllowed,
- ODLinkInfoResult* infoResult)
- {
- #ifdef SOMCHKEXCEPT
- ODBoolean __somResult =
- SOM_ResolveD(this,ODBaseLink,ODBaseLink,ShowLinkDestinationInfo)
- (this,ev,facet,info,changesAllowed,infoResult);
- SOMCHKEXCEPT;
- return __somResult;
- #else
- return SOM_ResolveD(this,ODBaseLink,ODBaseLink,ShowLinkDestinationInfo)
- (this,ev,facet,info,changesAllowed,infoResult);
- #endif
- }
-
- }; /* ODBaseLink */
-
-
-
- #endif /* SOM_ODBaseLink_xh */
-